In computer vision and other imaging and computing contexts, depth images provide important information for a scene being viewed. A depth image may be generated based on two (e.g., left and right or reference and target) two-dimensional images or between a first image and a projected image. Such applications rely on detecting corresponding features either between two cameras (e.g., two images) or between a camera (e.g., an image) and a projector system (e.g., a projected light pattern) and performing triangulation. Examples of systems for correspondence between camera and projector include coded light cameras and structured light cameras.
A challenge for triangulation based depth cameras is identifying which features in the camera correspond to the features provided by the projection system. Overcoming such challenges may require significant computational resources, which leads to higher cost and power consumption. Another challenge in projection based triangulation systems is the potential interference from sunlight washing out the projection pattern. Current systems use complex structured patterns to maximize the unique nature of the projected pattern, especially along the axis of the triangulation. There is a tradeoff between pattern complexity and pattern size, so the pattern may be repeated over the field of view of the camera. Such repeating patterns limit the size of disparity that can be detected and, therefore, the closest range detectable by the camera such that there is a resulting tradeoff between complexity and minimum range of the camera. Complex processing is used to search for the patterns along the epipolar axis using a search range that is less than or equal to the size of the repeating pattern. Sunlight rejection may be accomplished using a combination of bandpass optical filters that match the projector wavelength and synchronizing the pulsing of the laser projector to the exposure time of a global shutter sensor.
Therefore, current techniques and implementations have limitations. To detect close objects, the camera must be capable of detecting large disparities which leads to large, complex patterns and large search ranges thereby increasing the cost of the projector as well as the cost and power of required computation resources. Such limitations lead to complicated implementation, poor performance in sunlight, and less than desirable depth map results. It is with respect to these and other considerations that the present improvements have been needed. Such improvements may become critical as the desire to utilize depth images in a variety of applications becomes more widespread.